1. Field of the Invention
The present invention relates generally to piping and plumbing computer aided design systems, and in particular, to a method, apparatus, and article of manufacture for modifying a slope for interconnected plumbing/piping objects.
2. Description of the Related Art
Computer drafting and computer-aided design (CAD) applications are often used during the design and construction process to assist in designing building solutions. For example, such an application may be utilized to design piping and plumbing systems within a project. Certain types of piping and plumbing systems require that the piping has a “slope” applied to it. With the advent of three-dimensional (3D) modeling systems with interconnected objects, applying slope to a run of piping requires complex algorithms and assumptions in order to attempt to properly update the slope when making modifications to the model.
When making models of sloped piping systems after many iterations of modifications, the model may become disconnected or may not result in what the user wanted because the slope of other interconnected pipes may have caused the pipe run in question to move in an undesired way. As a result, the user's confidence in the model of the sloped pipe is reduced and the user won't find value in modeling the sloped pipe and resort to using older drafting methods to account for the slope and include that information on their drawings.
Such disadvantages may be better understood with a description of prior art systems that provide for elevation and slope determinations.
As described above, CAD application programs are used for generic design or specialized systems such as architecture, engineering, and construction (AEC) systems. For example, a CAD application program may be used in the creation and modification of an HVAC (heating, ventilation, and air conditioning) system, a plumbing and piping system, an electrical system, cable tray, conduit, a communications network, etc. Such systems may be further broken down into one or more subsystems. A subsystem is any fully connected set of components that share the common function of carrying the same fluid. For example, an HVAC system might include a gas pipe, hydronic pipe, and air duct subsystems. Key components link to more than one subsystem and serve the function of transferring energy from one subsystem to the next. For example, cold water might be used to cool air.
To accommodate the different types of systems and subsystems, 2D and/or 3D piping design systems provide the ability to draw a series of lines/pipes that represent a system/subsystem. Thereafter, the user may desire to modify or establish an appropriate slope for various segments of a system (e.g., a piping system). For example, when designing plumbing/piping lines, a slope may be needed for the appropriate directional flow of liquid or other materials through the piping. Such a slope establishes a defined slant angle that the designer desires across a piping run that may consist of multiple pipe objects/segments.
To define the slope, the user selects/identifies a particular object (e.g., a pipe object) and defines/modifies the slope for the object. However, if the object is connected to other objects, the other objects will not adjust their slope based on the modification. Alternatively, the other objects may adjust but in an unpredictable/undesirable manner. Accordingly, to change a slope in the prior art, the user was required to manually change the elevation at one point, manually determine how far the distance/length of the run (e.g., a pipe run) was, calculate the elevation at the end of the run, and manually change the elevation at that point. In this regard, the user was often required to manually adjust each individual object in a run to configure the slope in the desired manner.
FIG. 1 illustrates a prior art dialog box utilized to configure the elevation of a pipe object. To display dialog box 100, the user selects a plumbing line, and activates a menu choice displayed pursuant to the use of the right mouse button. The user may then enter a different value for the elevation in field 102 and selects/clicks the “OK” button. However, as described above, such a change to a plumbing line may break the connection of the selected plumbing line with other components. To resolve such breaks, the user may be required to reconnect disconnected components in a run by adding connecting segments, changing the elevation of the other segments, or moving or stretching the components. In addition, prior art implementations may not provide the ability to alter the slope but instead may merely add a riser at an identified point. Such a riser would merely increase the elevation at the identified point and break the pipe from any previously connected components.
In view of the above, what is needed is a tool that enables a user to modify the slope of a selected pipe run including all components within the pipe run.